perm filename CALL[D,LES] blob sn#022508 filedate 1973-01-30 generic text, type T, neo UTF8
00100	1973 Jan 29		Call Translation		   L. Earnest
00200	
00250	
00300	Reading Frost's draft UUO manual reminds me that CALLIs and CALLs are
00400	handled in a very silly and inefficient way.  There  should  only  be
00500	one  set  of  instructions  that  are  formatted  like CALLI but with
00600	mnemonics like CALL.  That is, instead of writing  "CALLI  AC,10"  or
00700	"CALL  AC,[SIXBIT/WAIT/]", you would say "WAIT AC,".  The latter form
00800	is as efficient as CALLI, as easy to remember as CALL, and easier  to
00900	write.
01000	
01100	These  opdefs  would  have  to  be  put into the symbol tables of the
01200	various processors, of course.  This would lead to some conflicts  in
01300	existing  programs,  for  example  where  labels  with the same names
01400	appear in tables where they can be interpreted as instructions.  Such
01500	conflicts would be few in number, I expect, and could easily be found
01600	and fixed.
01700	
01800	Unfortunately, for reasons of history and compatibility, we will have
01900	to  continue  supporting both CALLs and CALLIs in the Monitor.  Given
02000	that the CALL tables must exist there, we might as well exploit  them
02100	to  facilitate  communication with the various processors.  I propose
02200	the introduction of a new translation CALLI named, say, "TRANSI  AC,"
02300	that  causes  the  sixbit symbol in AC to be looked up in the Monitor
02400	symbol table and replaced with the corresponding CALLI, if any, or  0
02500	otherwise.  This  instruction  could  be  used  by  FAIL or any other
02600	processor to translate an unrecognized operator.
02700	
02800	To aid in debugging with RAID or whatever,  the  inverse  translation
02900	should  also  be  available.   Thus,  "TRANIS  AC," would convert the
03000	integer in the right half of AC to the corresponding sixbit mnemonic,
03100	if any, or 0.
03200	
03300	This  scheme  could  even be expanded a bit to make some other exotic
03400	UUO mnemonics, such as the various flavors of  TTYUUO,  available  to
03500	the world.